package com.sonotec.scap.common.action;

import java.util.Map;
import com.opensymphony.xwork2.Action;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.sonotec.scap.common.service.ServiceSeguridad;
import com.sonotec.scap.ventas.model.TUsuario;



public class LoginAction extends ActionSupport{

	private static final long serialVersionUID = 1L;
	private String cuenta;
	private String clave;
	private String mensaje;
	
	private ServiceSeguridad service;
	
	public LoginAction(){
		service = new ServiceSeguridad();
	}
	
	public String execute(){
		String retorno=Action.SUCCESS;
		try {
			TUsuario usuario = service.validarUsuario(cuenta, clave);
			if(usuario == null){
				mensaje = "Usuario y password no encontrados";
				retorno = Action.ERROR; 
			}else{
				Map session = ActionContext.getContext().getSession();				
				session.put("usuario", usuario);
			}
		} catch (Exception e) {
			mensaje = e.getMessage();
			retorno = Action.ERROR;
		}
		return retorno;
	}

	public void validate() {
		if(cuenta!=null && cuenta.length()==0){
				addFieldError("cuenta",getText("login.cuenta.required"));
		}
		if(clave!=null && clave.length()==0){
				addFieldError("clave", getText("login.clave.required"));
		}
	}
	
	public String getCuenta() {
		return cuenta;
	}

	public void setCuenta(String cuenta) {
		this.cuenta = cuenta;
	}

	public String getClave() {
		return clave;
	}

	public void setClave(String clave) {
		this.clave = clave;
	}

	public String getMensaje() {
		return mensaje;
	}

	public void setMensaje(String mensaje) {
		this.mensaje = mensaje;
	}
	
	
	
}